/* My Next Adventures test v311 — isolated from the booked-voyage UI. */
.na-page,.na-shell {--na-ink:#103552;--na-muted:#536c7c;--na-card:#fff;--na-soft:#f2f9fe;--na-border:#dbe7ef;color:var(--na-ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.5;}
body.dark.na-page,body.dark .na-shell {--na-ink:#e7f3ff;--na-muted:#a9bed2;--na-card:#13283e;--na-soft:#19334d;--na-border:#35506b;}
.na-page {margin:0;background:radial-gradient(ellipse at 12% 0%,#cdeffd,transparent 55%),#f3f8fc;min-height:100vh;}
body.dark.na-page {background:radial-gradient(ellipse at 12% 0%,#123958,transparent 55%),#091a2c;}
.na-page *,.na-shell * {box-sizing:border-box;}
.na-page-header {max-width:1180px;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 24px;}
.na-brand {display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit;font-size:20px;font-weight:800;}
.na-brand small {display:block;font-size:10px;font-weight:600;letter-spacing:.1em;color:var(--na-muted);}
.na-brand img {border-radius:13px;}
.na-page-main {max-width:1100px;margin:10px auto;padding:0 24px;}
.na-shell {background:var(--na-card);border:1px solid var(--na-border);border-radius:24px;padding:26px;margin-bottom:24px;box-shadow:0 12px 32px #14395a0b;}
.na-hero {background:radial-gradient(ellipse at 100% 0%,#49bfee20,transparent 65%),var(--na-card);padding:36px;}
.na-kicker {font-size:11px;letter-spacing:.16em;font-weight:800;color:#1677a5;}
.na-shell h1 {font-size:clamp(25px,4vw,38px);letter-spacing:-.04em;margin:10px 0;line-height:1.25;}
.na-shell h2 {font-size:21px;margin:0;letter-spacing:-.02em;}
.na-shell h3 {font-size:18px;margin:0 0 5px;line-height:1.35;overflow-wrap:anywhere;}
.na-shell p {margin:8px 0 14px;}
.na-muted {color:var(--na-muted);font-size:14px;}
.na-toolbar {display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px;flex-wrap:wrap;}
.na-actions {display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.na-page .na-button,.na-shell .na-button {display:inline-flex;justify-content:center;align-items:center;text-decoration:none;border:1px solid var(--na-border);border-radius:13px;background:var(--na-card);padding:10px 15px;min-height:44px;font:inherit;font-size:14px;font-weight:750;color:var(--na-ink);cursor:pointer;line-height:1.3;}
.na-page .na-primary,.na-shell .na-primary {color:white;border-color:#0873b4;background:linear-gradient(135deg,#075ba9,#0878bd);box-shadow:0 5px 16px #075ba920;}
.na-page button:disabled,.na-shell button:disabled {opacity:.5;cursor:wait;}
.na-page :focus-visible,.na-shell :focus-visible {outline:3px solid #249ddd;outline-offset:3px;}
.na-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
.na-adventure {min-width:0;border:1px solid var(--na-border);border-radius:18px;overflow:hidden;background:var(--na-card);}
.na-card-banner {display:flex;align-items:center;justify-content:space-between;padding:16px 18px;background:linear-gradient(120deg,#0879b91c,#44d5d512);border-bottom:1px solid var(--na-border);font-size:27px;}
.na-tag {font-size:10px;font-weight:800;letter-spacing:.09em;color:var(--na-muted);background:var(--na-soft);padding:5px 9px;border-radius:20px;display:inline-block;}
.na-card-body {padding:18px;}
.na-card-body p {font-size:14px;overflow-wrap:anywhere;white-space:pre-line;}
.na-cost {font-weight:800;font-size:17px!important;margin-top:15px!important;}
.na-cost small {display:block;font-size:12px;font-weight:400;color:var(--na-muted);}
.na-card-actions {border-top:1px solid var(--na-border);padding-top:12px;margin-top:14px;display:flex;flex-wrap:wrap;gap:7px;}
.na-card-actions .na-button {font-size:12px;padding:8px 10px;}
.na-shell .na-danger {color:#b42328;}
body.dark .na-shell .na-danger {color:#ffb5b5;}
.na-empty {grid-column:1/-1;padding:28px;text-align:center;border:1px dashed var(--na-border);border-radius:18px;background:var(--na-soft);}
.na-empty-icon {font-size:36px;}
.na-form-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
.na-wide {grid-column:1/-1;}
.na-shell label {display:flex;flex-direction:column;gap:7px;font-size:14px;font-weight:650;}
.na-shell input:not([type=checkbox]),.na-shell select,.na-shell textarea {width:100%;min-width:0;border:1px solid var(--na-border);border-radius:10px;background:var(--na-soft);color:var(--na-ink);padding:11px;font:inherit;font-size:16px;min-height:44px;}
.na-shell input[type=checkbox] {width:19px;height:19px;accent-color:#0878bd;flex-shrink:0;}
.na-shell .na-check {flex-direction:row;align-items:center;}
.na-settings {margin-top:24px;border-top:1px solid var(--na-border);padding-top:18px;}
.na-settings summary {cursor:pointer;font-weight:700;}
.na-settings form {display:grid;gap:14px;max-width:500px;}
.na-settings .na-button {justify-self:start;}
.na-error {color:#b42328;font-weight:650;}
body.dark .na-error {color:#ffb5b5;}
.na-page-footer {text-align:center;padding:28px 20px 40px;color:var(--na-muted);font-size:13px;}
#na-dashboard {grid-column:1/-1;width:100%;min-width:0;margin:0;}
#na-dashboard[hidden],.na-page [hidden] {display:none!important;}
#na-editor {scroll-margin-top:24px;}
@media(max-width:850px){.na-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.na-page-header{padding:18px;}}
@media(max-width:580px){.na-grid,.na-form-grid{grid-template-columns:1fr;}.na-shell{padding:20px;border-radius:18px;}.na-hero{padding:25px 20px;}.na-page-main{padding:0 12px;}.na-page-header{flex-wrap:wrap;gap:12px;}.na-brand{font-size:17px;}.na-toolbar{align-items:flex-start;}#na-dashboard{padding:18px;}}


/* v312 shared page navigation — same placement on standalone MyVoyageBoard pages. */
.mvb-site-header{max-width:1400px;}
.mvb-site-nav{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end;}
.mvb-site-tab{display:inline-flex;align-items:center;gap:6px;min-height:42px;padding:9px 13px;border:1px solid transparent;border-radius:12px;color:var(--na-ink);background:transparent;text-decoration:none;font:inherit;font-size:13px;font-weight:750;cursor:pointer;white-space:nowrap;}
.mvb-site-tab:hover{background:var(--na-soft);border-color:var(--na-border);}
.mvb-site-tab.active{color:#fff;background:linear-gradient(135deg,#075ba9,#0878bd);box-shadow:0 5px 16px #075ba920;}
.mvb-theme-tab{appearance:none;}
/* Protect primary-action text from older global link/button color rules. */
.na-page .na-button.na-primary,.na-shell .na-button.na-primary,.na-page a.na-primary,.na-shell a.na-primary{color:#fff!important;-webkit-text-fill-color:#fff!important;}
.na-page .na-button.na-primary:visited,.na-shell .na-button.na-primary:visited{color:#fff!important;}
@media(max-width:760px){
  .mvb-site-header{align-items:flex-start;}
  .mvb-site-nav{width:100%;justify-content:space-between;gap:4px;}
  .mvb-site-tab{flex:1 1 auto;justify-content:center;padding:8px 7px;font-size:12px;}
}
@media(max-width:520px){.mvb-site-tab span{display:none}.mvb-site-tab{font-size:18px;min-width:48px}.mvb-theme-tab span{display:none}}


/* v313 full shared navigation + Voyages flyout */
.mvb-site-header{max-width:1400px;display:flex;flex-wrap:wrap;}
.mvb-site-nav{width:auto;padding:4px;border:1px solid var(--na-border);border-radius:999px;background:color-mix(in srgb,var(--na-card) 88%,transparent);box-shadow:0 7px 24px rgba(16,53,82,.06);flex-wrap:nowrap;}
.mvb-site-tab{border-radius:999px;min-height:48px;padding:10px 16px;font-size:14px;}
.mvb-voyages-menu{position:relative;display:inline-flex;align-items:stretch;}
.mvb-voyages-menu>.mvb-site-tab{height:100%;}
.mvb-voyages-caret{font-size:.68rem;opacity:.72;transition:transform .16s ease;}
.mvb-voyages-menu:hover .mvb-voyages-caret,.mvb-voyages-menu:focus-within .mvb-voyages-caret{transform:rotate(180deg);}
.mvb-voyages-flyout{position:absolute;z-index:1000;top:calc(100% + 9px);left:0;min-width:235px;padding:8px;border:1px solid var(--na-border);border-radius:16px;background:var(--na-card);box-shadow:0 18px 38px rgba(16,53,82,.17);opacity:0;visibility:hidden;transform:translateY(-5px);pointer-events:none;transition:opacity .14s ease,transform .14s ease,visibility .14s ease;}
/* Transparent hover bridge prevents the menu closing while moving into the flyout. */
.mvb-voyages-flyout::before{content:"";position:absolute;left:0;right:0;top:-11px;height:11px;}
.mvb-voyages-menu:hover .mvb-voyages-flyout,.mvb-voyages-menu:focus-within .mvb-voyages-flyout{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto;}
.mvb-voyages-flyout>a{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:11px;color:var(--na-ink);text-decoration:none;font-size:13px;font-weight:750;}
.mvb-voyages-flyout>a:hover,.mvb-voyages-flyout>a:focus-visible{background:var(--na-soft);outline:none;}
.mvb-voyages-flyout>a.active{color:#fff;background:linear-gradient(135deg,#075ba9,#0878bd);}
.mvb-voyages-flyout>a b{font-size:16px;}
.mvb-voyages-flyout small{display:block;font-size:10px;font-weight:600;opacity:.72;margin-top:1px;}
@media(max-width:980px){.na-page-header{align-items:flex-start}.mvb-site-nav{width:100%;overflow:visible;justify-content:space-between}.mvb-site-tab{padding:9px 10px;font-size:12px}.mvb-voyages-flyout{left:50%;transform:translate(-50%,-5px)}.mvb-voyages-menu:hover .mvb-voyages-flyout,.mvb-voyages-menu:focus-within .mvb-voyages-flyout{transform:translate(-50%,0)}}
@media(max-width:680px){.mvb-site-nav{border-radius:18px;flex-wrap:wrap}.mvb-site-tab{flex:1 1 auto;justify-content:center}.mvb-voyages-menu{flex:1 1 auto}.mvb-voyages-menu>.mvb-site-tab{width:100%}}


/* v315 — standalone pages use the SAME desktop header/menu proportions as index.html. */
.na-page-header.mvb-site-header{
  width:100%;
  max-width:1800px;
  margin:0 auto 12px;
  padding:20px 20px 0;
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:12px;
  flex-wrap:nowrap;
}
.na-page-header .na-brand{
  display:flex;
  flex-direction:row;
  align-items:flex-start;
  gap:10px;
  color:var(--na-ink);
  font-size:clamp(1rem,1.2vw + .9rem,1.4rem);
  line-height:1.15;
  letter-spacing:.03em;
  font-weight:800;
}
.na-page-header .na-brand img{
  width:56px;
  height:56px;
  flex:0 0 56px;
  border-radius:8px;
  object-fit:cover;
  box-shadow:0 8px 22px rgba(7,91,169,.20),0 0 0 1px rgba(7,91,169,.08);
}
.na-page-header .na-brand>span{
  display:flex;
  flex-direction:column;
  gap:2px;
  padding-top:2px;
}
.na-page-header .na-brand small{
  display:block;
  letter-spacing:0;
  text-transform:none;
  font-size:.78rem;
  line-height:1.25;
}
.na-page-header .na-brand-promise{color:var(--na-muted);font-weight:520;}
.na-page-header .na-brand-tagline{color:#0878bd;font-weight:850;}

/* Mirror the dashboard .tabs/.tab-btn sizing instead of the oversized standalone nav. */
.na-page-header .mvb-site-nav{
  width:fit-content;
  max-width:100%;
  margin-left:auto;
  display:inline-flex;
  align-items:stretch;
  justify-content:flex-end;
  gap:0;
  flex-wrap:nowrap;
  padding:3px;
  border:1px solid rgba(7,91,169,.16);
  border-radius:999px;
  background:rgba(255,255,255,.82);
  box-shadow:0 8px 24px rgba(7,91,169,.07);
  backdrop-filter:blur(12px);
}
.na-page-header .mvb-site-tab{
  min-height:0;
  height:auto;
  padding:6px 14px;
  border:1px solid transparent;
  border-radius:999px;
  background:transparent;
  color:#496b83;
  box-shadow:none;
  font:inherit;
  font-size:.8rem;
  font-weight:650;
  line-height:1.5;
  gap:6px;
  transition:all .2s ease;
}
.na-page-header .mvb-site-tab:hover{
  color:#0a4e82;
  background:rgba(8,120,189,.06);
  border-color:transparent;
  transform:translateY(-1px);
}
.na-page-header .mvb-site-tab.active{
  color:#fff;
  background:linear-gradient(135deg,#075ba9 0%,#0878bd 100%);
  border-color:transparent;
  box-shadow:0 8px 18px rgba(7,91,169,.24),0 0 0 1px rgba(255,255,255,.18) inset;
}
.na-page-header .mvb-voyages-menu{align-items:stretch;}
.na-page-header .mvb-voyages-menu>.mvb-site-tab{height:100%;}
.na-page-header .mvb-voyages-flyout{
  top:calc(100% + 8px);
  min-width:230px;
  border-radius:16px;
}

body.dark.na-page .na-page-header .mvb-site-nav{
  background:rgba(19,40,62,.88);
  border-color:#35506b;
}
body.dark.na-page .na-page-header .mvb-site-tab{color:#a9bed2;}
body.dark.na-page .na-page-header .mvb-site-tab:hover{color:#e7f3ff;background:#19334d;}
body.dark.na-page .na-page-header .mvb-site-tab.active{color:#fff;}

@media(max-width:1400px){
  .na-page-header.mvb-site-header{flex-direction:column;}
  .na-page-header .mvb-site-nav{align-self:flex-end;}
}
@media(max-width:760px){
  .na-page-header.mvb-site-header{padding:14px 14px 0;gap:8px;}
  .na-page-header .mvb-site-nav{display:none!important;}
}

/* v317 standalone header reset: navigation now comes only from shared-navigation.css. */
.na-page .mvb-standalone-header{font-family:system-ui,-apple-system,BlinkMacSystemFont,"SF Pro Text",sans-serif;line-height:normal;}


/* v321 — make a successful adventure save feel intentional and celebratory. */
#na-status.na-success{
  display:flex;
  align-items:center;
  gap:12px;
  width:min(100%,720px);
  margin:12px 0 18px;
  padding:13px 15px;
  border:1px solid rgba(8,120,189,.22);
  border-radius:14px;
  background:linear-gradient(135deg,rgba(7,91,169,.08),rgba(61,198,210,.10));
  box-shadow:0 8px 22px rgba(7,91,169,.08);
  color:var(--na-ink);
}
#na-status.na-success .na-success-icon{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  flex:0 0 34px;
  border-radius:50%;
  color:#fff;
  background:linear-gradient(135deg,#075ba9,#0878bd);
  box-shadow:0 5px 14px rgba(7,91,169,.22);
  font-weight:900;
  font-size:18px;
}
#na-status.na-success .na-success-copy{display:flex;flex-direction:column;gap:2px;min-width:0;}
#na-status.na-success strong{font-size:15px;line-height:1.25;}
#na-status.na-success small{font-size:12px;line-height:1.35;color:var(--na-muted);}
body.dark #na-status.na-success{border-color:#355f7d;background:linear-gradient(135deg,rgba(8,120,189,.16),rgba(61,198,210,.08));}


/* =========================================================
   v323 NEXT ADVENTURE CARD — make a saved dream feel special.
   ========================================================= */
.na-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:start;}
.na-adventure{
  border:1px solid rgba(7,91,169,.16);border-radius:24px;
  box-shadow:0 16px 38px rgba(16,53,82,.10);overflow:hidden;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
@media(hover:hover) and (pointer:fine){.na-adventure:hover{transform:translateY(-3px);box-shadow:0 22px 48px rgba(16,53,82,.15);border-color:rgba(8,120,189,.32);}}
.na-card-banner{
  position:relative;min-height:176px;padding:18px;align-items:flex-start;
  background-position:center;background-size:cover;background-repeat:no-repeat;
  border-bottom:0;isolation:isolate;overflow:hidden;
}
.na-card-banner::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(3,22,40,.12) 0%,rgba(3,22,40,.24) 44%,rgba(3,22,40,.82) 100%);}
.na-card-banner::after{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(135deg,#0b74b7,#48b9d7);}
.na-card-banner .na-card-dream-mark{display:flex;align-items:center;gap:8px;color:#fff;font-size:13px;font-weight:850;text-shadow:0 2px 8px rgba(0,0,0,.28);}
.na-card-banner .na-card-dream-mark span:first-child{display:grid;place-items:center;width:34px;height:34px;border-radius:12px;background:rgba(255,255,255,.92);color:#0878bd;text-shadow:none;box-shadow:0 7px 18px rgba(0,0,0,.15);}
.na-card-banner .na-tag{margin-left:auto;color:#103552;background:rgba(255,255,255,.92);box-shadow:0 6px 18px rgba(0,0,0,.13);backdrop-filter:blur(7px);}
.na-card-hero-title{position:absolute;left:20px;right:20px;bottom:18px;color:#fff;font-size:22px;font-weight:850;line-height:1.16;letter-spacing:-.025em;text-shadow:0 3px 14px rgba(0,0,0,.42);}
.na-card-body{padding:20px 20px 18px;}
.na-card-ship{margin:0 0 13px!important;color:#0878bd!important;font-size:12px!important;font-weight:850;text-transform:uppercase;letter-spacing:.09em;}
.na-card-meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:15px;}
.na-meta-pill{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:7px 10px;border:1px solid var(--na-border);border-radius:999px;background:var(--na-soft);font-size:12px;font-weight:700;color:var(--na-ink);}
.na-route-box{padding:13px 14px;margin:5px 0 15px;border-radius:16px;background:linear-gradient(135deg,rgba(7,91,169,.055),rgba(61,198,210,.08));border:1px solid rgba(8,120,189,.12);}
.na-route-label{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:7px;color:#0878bd;font-size:10px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;}
.na-route-list{font-size:13px;color:var(--na-muted);line-height:1.55;}
.na-route-list strong{color:var(--na-ink);font-weight:750;}
.na-cost-panel{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;padding:13px 14px;border-radius:16px;background:var(--na-soft);border:1px solid var(--na-border);}
.na-cost-panel .na-cost{margin:0!important;}
.na-cost-label{display:block;margin-bottom:2px;font-size:10px;font-weight:850;letter-spacing:.09em;text-transform:uppercase;color:var(--na-muted);}
.na-cost-panel .na-dream-note{font-size:12px;color:var(--na-muted);text-align:right;}
.na-card-actions{margin-top:16px;padding-top:14px;}
.na-card-actions .na-button{min-height:40px;padding:8px 12px;border-radius:12px;}
.na-card-actions .na-button:first-child{border-color:rgba(8,120,189,.28);color:#075ba9;}
body.dark .na-card-ship{color:#63c8ff!important;}
body.dark .na-card-banner .na-tag{color:#103552;}
body.dark .na-cost-panel,body.dark .na-route-box{border-color:#35506b;}

@media(max-width:850px){.na-grid{grid-template-columns:1fr;}.na-adventure{max-width:620px;}}
@media(max-width:580px){
  .na-adventure{max-width:none;border-radius:20px;}
  .na-card-banner{min-height:158px;padding:15px;}
  .na-card-hero-title{left:16px;right:16px;bottom:15px;font-size:20px;}
  .na-card-body{padding:16px;}
  .na-cost-panel{align-items:flex-start;flex-direction:column;gap:4px;}
  .na-cost-panel .na-dream-note{text-align:left;}
}

.na-card-accessible-title{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;}

/* v333 — dream-to-booked voyage conversion */
.na-button.na-convert{background:linear-gradient(135deg,#075ba9,#0878bd);color:#fff;border-color:transparent;box-shadow:0 9px 22px rgba(7,91,169,.18);font-weight:800}
.na-button.na-convert:hover{filter:brightness(1.04);transform:translateY(-1px)}
.na-card-actions .na-convert{flex:1 1 100%;justify-content:center}


/* v365 — Sea Theme lock for the dream-to-booked primary action.
   This intentionally outranks the generic "first action" rule above. */
.na-page .na-card-actions .na-button.na-convert,
.na-shell .na-card-actions .na-button.na-convert{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  border-color:transparent!important;
  background:linear-gradient(135deg,#075ba9,#0878bd)!important;
  box-shadow:0 9px 22px rgba(7,91,169,.24)!important;
  opacity:1;
}
body.dark .na-card-actions .na-button.na-convert{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  background:linear-gradient(135deg,#075ba9,#0878bd)!important;
  border-color:rgba(99,200,255,.18)!important;
  box-shadow:0 9px 24px rgba(0,0,0,.30)!important;
}
